package com.ruoyi.project.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 项目风险对象 project_risk
 *
 * @author yuhaoyang
 * @date 2024-06-04
 */
public class ProjectRisk extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 项目风险主键
     */
    private Long riskId;

    /**
     * 项目主键
     */
    @Excel(name = "项目主键")
    @NotNull(message = "项目不能为空")
    private Long projectId;

    /**
     * 项目名称
     */
    private String projectName;


    /**
     * 风险类别主键
     */
    @Excel(name = "风险类别主键")
    @NotNull(message = "风险类别不能为空")
    private Long risktypeId;

    /**
     * 风险类别名称
     */
    private String risktypeName;

    /**
     * 项目风险标题
     */
    @Excel(name = "项目风险标题")
    @NotBlank(message = "风险标题不能为空")
    @Length(max = 36, message = "风险标题长度不能超过36个字符")
    private String riskTitle;

    /**
     * 跟进人
     */
    @Excel(name = "跟进人")
    @NotNull(message = "跟进人不能为空")
    private Long userId;

    /**
     * 跟进人姓名
     */
    private String nickName;

    /**
     * 状态
     */
    @Excel(name = "状态")
    @NotNull(message = "状态不能为空")
    private Integer riskStatus;

    /**
     * 风险内容
     */
    @Excel(name = "风险内容")
    @NotBlank(message = "风险内容不能为空")
    @Length(max = 200, message = "风险内容长度不能超过200个字符")
    private String riskContent;

    public String getProjectName() {
        return projectName;
    }

    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getRisktypeName() {
        return risktypeName;
    }

    public void setRisktypeName(String risktypeName) {
        this.risktypeName = risktypeName;
    }

    public void setRiskId(Long riskId) {
        this.riskId = riskId;
    }

    public Long getRiskId() {
        return riskId;
    }

    public void setProjectId(Long projectId) {
        this.projectId = projectId;
    }

    public Long getProjectId() {
        return projectId;
    }

    public void setRisktypeId(Long risktypeId) {
        this.risktypeId = risktypeId;
    }

    public Long getRisktypeId() {
        return risktypeId;
    }

    public void setRiskTitle(String riskTitle) {
        this.riskTitle = riskTitle;
    }

    public String getRiskTitle() {
        return riskTitle;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setRiskStatus(Integer riskStatus) {
        this.riskStatus = riskStatus;
    }

    public Integer getRiskStatus() {
        return riskStatus;
    }

    public void setRiskContent(String riskContent) {
        this.riskContent = riskContent;
    }

    public String getRiskContent() {
        return riskContent;
    }

    @Override
    public String toString() {
        return "ProjectRisk{" +
                "riskId=" + riskId +
                ", projectId=" + projectId +
                ", projectName='" + projectName + '\'' +
                ", risktypeId=" + risktypeId +
                ", risktypeName='" + risktypeName + '\'' +
                ", riskTitle='" + riskTitle + '\'' +
                ", userId=" + userId +
                ", nickName='" + nickName + '\'' +
                ", riskStatus=" + riskStatus +
                ", riskContent='" + riskContent + '\'' +
                '}';
    }
}
